package com.yunxi.dao.order;

import com.yunxi.core.dao.BaseMapperPlus;
import com.yunxi.model.order.PmsVehicleStock;
import com.yunxi.sto.pojo.*;
import com.yunxi.vehicle.pojo.VehicleCatalogListVO;
import com.yunxi.vehicle.pojo.VehicleSeriesListVO;
import java.util.List;
import java.util.Map;

/**
 * <p>
 * 经销商车辆库存 Mapper 接口
 * </p>
 *
 * @author Guan
 * @since 2019-05-07
 */
public interface VehicleStockMapper extends BaseMapperPlus<PmsVehicleStock> {

    /**
     * 根据选装包代码集合,查询名称拼接
     * @param list
     * @return
     */
    String queryVehiclePackageByList(List<String> list);

    /**
     * 整车入库
     * @param
     */
    void updateDealerStock(PmsVehicleStock pmsVehicleStock);

    List<VehicleSeriesListVO> seriesList()throws Exception;

    List<VehicleCatalogListVO> catalogList();

    VehicleStockVO findByVehicleId(String vehicleId);

    List<VehicleStockVO> queryMaintainByList(Map<String, Object> map);

    List<VehicleStockMaintainVO> exportList(Map<String, Object> map);

    List<VehicleStockQueryVO> sharePage(VehicleStockQueryVO vehicleStockQueryVO);

    List<VehicleStockQueryVO> newSharePage(VehicleStockQueryVO vehicleStockQueryVO);

    List<VehicleStockQueryVO> financePage(VehicleStockQueryVO vehicleStockQueryVO);

    List<VehicleStockQueryVO> shareList(VehicleStockQueryVO vehicleStockQueryVO);

    String queryPartnerType(String partnerCode);

    List<VehicleStockFrozenListVO> exportFrozenList();

    List<VehicleStockReportVO> stockReport(VehicleStockReportVO vehicleStockReportVO);

    List<VehicleStockReportDetailVO> stockReportDetail(VehicleStockReportDetailVO vehicleStockReportDetailVO);
}
